Table 124 - READ CAPACITY command
=============================================================================== | Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |Byte | | | | | | | | | |=============================================================================| | 0 | Operation code (25h) | |-----------------------------------------------------------------------------| | 1 | Logical unit number | Reserved | RelAdr | |-----------------------------------------------------------------------------| | 2 | (MSB) | |--------- ---| | 3 | | |--------- Logical block address ---| | 4 | | |--------- ---| | 5 | (LSB) | |-----------------------------------------------------------------------------| | 6 | Reserved | |-----------------------------------------------------------------------------| | 7 | Reserved | |-----------------------------------------------------------------------------| | 8 | Reserved | PMI | |-----------------------------------------------------------------------------| | 9 | Control | ===============================================================================See 9.2.2 for a definition of the RelAdr bit and the logical block address field.
The logical block address shall be zero if the PMI bit is zero. If the PMI bit is zero and the logical block address is not zero, the target shall return a CHECK CONDITION status, the sense key shall be set to ILLEGAL REQUEST and the additional sense code set to ILLEGAL FIELD IN CDB.
A partial medium indicator (PMI) bit of zero indicates that the returned logical block address and the block length in bytes are those of the last logical block on the logical unit.
A PMI bit of one indicates that the returned logical block address and block length in bytes are those of the logical block address after which a substantial delay in data transfer will be encountered. This returned logical block address shall be greater than or equal to the logical block address specified by the RelAdr and logical block address fields in the command descriptor block.
( This function is intended to assist storage management software in determining whether there is sufficient space on the current track, cylinder, etc., to contain a frequently accessed data structure, such as a file directory or file index, without incurring an access delay. )
The READ CAPACITY data (see table 125) shall be sent during the DATA IN phase of the command.
Table 125 - READ CAPACITY data
=============================================================================== | Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |Byte | | | | | | | | | |=============================================================================| | 0 | (MSB) | |- - ----- Returned logical block address ---| | 3 | (LSB) | |-----------------------------------------------------------------------------| | 4 | (MSB) | |- - ----- Block length In bytes ---| | 7 | (LSB) | ===============================================================================